// pages/goodsDetail/goodsDetail.js
const { baseUrl } = require('../../globalData.js')
Page({

    /**
     * 页面的初始数据
     */
    data: {
        goodsData: {},
        recommendList: [],
        baseUrl,
        // 购买弹窗
        isShow: false,
        // 商品购买数量
        num: 1
    },
    // 商品图片放大
    showPic(e) {
        console.log(e);
    },
    // 商品信息初始化
    getGoodsInfo(id) {
        wx.request({
            url: baseUrl + `/goodsDetail/${id}`,
            //	请求成功回调
            success: (res) => {
                const newData = this.formatGoodsData(res.data.data)
                this.setData({
                    goodsData: newData
                })
            },
        });
    },
    // 处理图片自适应屏幕的函数
    // 参数：对象，服务器响应的商品数据
    formatGoodsData(data) {
        let content = data.goods_content
        content = content.replace(/\<img/gi, '<img style="width:100%;height:auto"')
        data.goods_content = content
        return data
    },
    goMy() {
        wx.switchTab({
            url: '/pages/my/index',
        })
    },
    goCart() {
        wx.switchTab({
            url: '/pages/buy/index',
        })
    },
    addBuy() {
        this.setData({
            isShow: true
        })
    },
    exitBuy() {
        this.setData({
            isShow: false
        })
    },
    // 修改购买商品数量
    changeNum(e) {
        const n = parseInt(e.currentTarget.dataset.num)
        let val = this.data.num + n
        if (val < 1) {
            return false
        }
        this.setData({
            num: val
        })

    },
    buySubmit() {
        // 将当前的选择的商品存储到本地缓存，有则取出无则转为空数组
        let cartList = wx.getStorageSync('cartList') || []
        const currentGoods = this.data.goodsData
        currentGoods.num = this.data.num
        currentGoods.pay = currentGoods.goods_price * this.data.num
        // 默认勾选状态以便购物车操作
        currentGoods.isSelected = true
        cartList.push(currentGoods)
        wx.setStorageSync('cartList', cartList)
        this.exitBuy()
        this.setData({
            num: 1
        })
        wx.showToast({
            title: '已添加到购物车',	// 内容提示
            icon: 'success',	// 是否显示图标
            duration: 3000
        })
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        const id = parseInt(options.id)
        this.getGoodsInfo(id)
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {
        wx.request({
            url: baseUrl + '/recommendGoods',
            //	请求成功回调
            success: (res) => {
                this.setData({
                    recommendList: res.data.data
                })
            },
        });
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})